package com.jic.interaction.JDVOP.model.vo.request;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;

/**
 * @Auther YGH
 * @DATE 2020/11/16/17:15
 */
@Data
@ApiModel(description = "申请开票")
public class InvoiceApplyRequest {
    @ApiModelProperty(notes = "授权时获取的access token")
    private String token;
    @ApiModelProperty(notes = "子订单号，批量以英文逗号分割")
    private String supplierOrder;
    @ApiModelProperty(notes = "第三方申请单号：申请发票的唯一id标识 (该标记下可以对应多张发票信息)")
    private String markId;
    @ApiModelProperty(notes = "结算单号(一个结算单号可对对应多个第三方申请单号)")
    private String settlementId;
    @ApiModelProperty(notes = "结算单子订单总数")
    private Integer settlementNum;
    @ApiModelProperty(notes = "结算单不含税总金额")
    private BigDecimal settlementNakedPrice;
    @ApiModelProperty(notes = "结算单总税额")
    private BigDecimal settlementTaxPrice;
    @ApiModelProperty(notes = "发票类型1：增值税普通发票2：增值税专用发票")
    private Integer invoiceType;
    @ApiModelProperty(notes = "开票机构ID(联系京东业务确定)")
    private Integer invoiceOrg;
    @ApiModelProperty(notes = "开票内容：1, 明细2, 办公用品(附购物清单)3, 电脑配件4,耗材5, 食品6, 礼品7, IT数码8, 通讯器材9, 体育休闲10, 饰品11, 家用电器12, 汽车用品13, 化妆品14, 玩具15, 箱包皮具16, 服装17, 劳保用品18, 图书19, 资料20, 教材21, 音像")
    private Integer bizInvoiceContent;
    @ApiModelProperty(notes = "期望开票时间，格式：2013-11-8")
    private String invoiceDate;
    @ApiModelProperty(notes = "发票抬头")
    private String title;
    @ApiModelProperty(notes = "收票单位 ")
    private String billToParty;
    @ApiModelProperty(notes = "纳税人识别号(专票必须) ")
    private String enterpriseTaxpayer;
    @ApiModelProperty(notes = "收票人 (专票必须)")
    private String billToer;
    @ApiModelProperty(notes = "收票人联系电话")
    private String billToContact;
    @ApiModelProperty(notes = "收票人地址(省)  (专票必须)")
    private Integer billToProvince;
    @ApiModelProperty(notes = "收票人地址(市)  (专票必须)")
    private Integer billToCity;
    @ApiModelProperty(notes = "收票人地址(区)  (专票必须)")
    private Integer billToCounty;
    @ApiModelProperty(notes = "收票人地址(街道)(专票有四级地址则必传，否则传0)")
    private Integer billToTown;
    @ApiModelProperty(notes = "收票人地址(详细地址)(专票必须)")
    private String billToAddress;
    @ApiModelProperty(notes = "预计还款时间2013-11-8(开票方式为预借时必传)")
    private String repaymentDate;
    @ApiModelProperty(notes = "当前批次子订单总数")
    private Integer invoiceNum;
    @ApiModelProperty(notes = "当前批次不含税总金额(单位：元)")
    private BigDecimal invoiceNakedPrice;
    @ApiModelProperty(notes = "当前批次总税额(参考用)")
    private BigDecimal invoiceTaxPrice;
    @ApiModelProperty(notes = "当前批次含税总金额")
    private BigDecimal invoicePrice;
    @ApiModelProperty(notes = "当前批次号")
    private Integer currentBatch;
    @ApiModelProperty(notes = "总批次数")
    private Integer totalBatch;
    @ApiModelProperty(notes = "总批次开发票金额(不含税)")
    private BigDecimal totalBatchInvoiceNakedAmount;
    @ApiModelProperty(notes = "总批次开发票税额")
    private BigDecimal totalBatchInvoiceTaxAmount;
    @ApiModelProperty(notes = "总批次开发票价税合计")
    private BigDecimal totalBatchInvoiceAmount;
    @ApiModelProperty(notes = "1-集中开票，2-分别开票(不传默认为集中开票)")
    private Integer billingType;
    @ApiModelProperty(notes = "合并开票，(不传默认为合并开票)1-合并SKU，空和其他-分别开票")
    private Integer isMerge;
    @ApiModelProperty(notes = "采购单号，长度范围[1-26]")
    private String poNo;

}
